<?php
/****************************************************************
** Application : Nova
**
** Les buts de cet application sont de fournir un outils de partage
** de l'information pour le site membre "nova"
**
** Les auteurs :
** 		Design Web 			: Serge Peter
** 		Developpement PHP 	: Serge Peter
** 		Etudes 				: Sandrine Guihenneuc
**		Feuille de style	: Sandrine Guihenneuc
** Fichier CalInfo.php :
** 		Ce fichier contient les fonctions se rapportant a la gestion
**      de l'information (ou contenu)
**
*****************************************************************/

/**
* @function treate_info
*
* @deal traitement general des information (news,liens,...)
*
* @param  object  $db       	Instance d'un formulaire PEAR
* @param  string  INDEX_FORM  		Legende
* @param  string  $service_id  	Id du service (edition, effacement, ...)
*/
function treate_info($db,  $service_id)
{
	/* check des droits */
	if ($_SESSION['ponderation'] >=10) {

	/* lecture des variable */
	if (isset($_GET["adm_id"]))
		$id = $_GET['adm_id'];
	else
		$id=0;
	
	if (isset($_GET["adm_action"]))
		$action = $_GET['adm_action'];
	else
		$action=0;

	

	/* variable "globale" */
	$table_name = TB . "informations";
	$title = "informations";
	$shortname="info";
	
	/* get $_SESSION['comment'] */
	if ( isset($_SESSION['comment']) ) {
		$comment = $_SESSION['comment'];
	}else{
		$comment=0;
	}

	/* application du mode par defaut.
		 Le mode "action" est passe en parametre de l'url ...?action=SELECTION par example */
	if (empty ($action))
		$action = SELECTION;

	/* travail en fonction des actions */
	switch($action)
	{
		case 0;   // Mode selection

			/* on lance la query */
			$sql = "SELECT tb.id, tb.titre, tb.url, ci.nom as cible, tb.parution_d FROM " . $table_name . " tb, " . TB . "information_cibles ci
			WHERE tb.cible_id = ci.id ORDER by tb.parution_d desc";
			$result = $db->query($sql);

			/* on initialise la table */
			$colHeaders = array("id", "Titre", "Lien Url","Cible","Date", "Actions");
			$headerStyle = "bgcolor=grey nowrap";
			$table = new HTML_Table();
			$table->addRow($colHeaders, "", "TH");

			/* on remplit la table */
			while ($row = $result->fetchrow(DB_FETCHMODE_ASSOC)) {
			$table->addRow(array($row["id"],
			$row["titre"],
			"<a href=\"" . $row["url"] . "\" TARGET=\"_blank\">Aller</a>",
			$row["cible"],
			$row["parution_d"],
		      "<a href=\"" . INDEX_FORM . "?adm_action=2&adm_id=" . $row["id"] . "&id=" . $service_id . "&sub_id=". $shortname ."\">" . IMG_1 ."</a>"
			. "<a href=\"" . INDEX_FORM . "?adm_action=3&adm_id=" . $row["id"] . "&id=" . $service_id . "&sub_id=". $shortname ."\">" . IMG_2 ."</a>"));
		    }
			table_display($table, $title, "admin");
		
			$url_add=INDEX_FORM . "?adm_action=1&adm_id=NA&id=" . $service_id . "&sub_id=" . $shortname;
			$label=MSG_CONT_3;
			print_url ($url_add,$label);
	     	break;

	case 3;   // Mode effacer
			$url_back = INDEX_FORM . "?id=" . $service_id . "&sub_id=" . $shortname;
			del_record_and_go_back($db,  $service_id, $table_name, $id, $url_back);
		    break;	

	case 1 or 2;  // mode ajouter ou editer

		    /* definir la query */
		    $sql = 'select * from ' . $table_name . '
		    where id = "' . $id . '"';

		    /* lancer la query */
		    $res = $db->query($sql);

		    // check des erreurs DB
		    if ( DB::isError( $res = $db->query( $sql ) ) ) {
			    echo MSG_DB_ERR . " " . DB::errorMessage($res), '<br/>';
		    }else{
			
				/* il s'agit d'un nouveau enregistrement , on essigne les valeurs par defaut */
				if ($id == "NA"){
					$today = getdate();
					$id = null ;
					$titre= "titre" ;
					$description = "";
					$url = "http://...";
					$cible_id = "";
					$parution_d = $today['year'] . "-" . $today['mon'] . "-" . $today['mday'];
					$target = "";
					
				}else{
					/* assignation dans variables session */
					if (is_array($row = $db->getRow($sql))) {
						list($id,
						$titre,
						$description,
						$url,
						$cible_id,
						$parution_d,
						$target) = $row;
					}
				}

		        /*
		        ** creation du formulaire e l'aide des fonction de HTML_QuickForm
		        */
		 		$form = new HTML_QuickForm('frm' . $table_name, 'post',  INDEX_FORM . '?adm_action=' . $action . '&adm_id=' . $id . '&id=' . $service_id . '&sub_id=' . $shortname);

				$form->addElement('hidden', 'id', 'Id', array('value' => $id));
				$form->addElement('text', 'titre', 'Titre', array('value' => $titre, 'size' => 80, 'maxlength' => 255));

				$attrs = array("class"=>"warn",
					   "rows"=>"20",
					   "cols"=>"80",
					   "id" => "description");
				$form->addElement('textarea', 'description', 'Description', $attrs);
				$form->setDefaults(array('description' => $description));

				$form->addElement('html', "
					<script type='text/javascript' src='js/toolbar.js'></script>
					<script type='text/javascript'>
					if (document.getElementById) {
					var tb = new dcToolBar(document.getElementById('description'),'html','images/');
					tb.btStrong('Forte emphase');
					tb.btEm('Emphase');
					tb.btIns('Insere');
					tb.btDel('Supprime');
					tb.btQ('Citation en ligne');
					tb.btCode('Code');
					tb.addSpace(10);
					tb.btBr('Saut de ligne');
					tb.addSpace(10);
					tb.btBquote('Bloc de citation');
					tb.btPre('Texte preformate');
					tb.btList('Liste non ordonnee','ul');
					tb.btList('Liste ordonnee','ol');
					tb.addSpace(10);
					tb.btLink('Lien',
					'URL ?',
					'Langue ?',
					'fr');
					tb.btImgLink('Image externe','URL ?');
					tb.addSpace(10);
					tb.draw('Vous pouvez utiliser les raccourcis suivants pour enrichir votre presentation.');
					}
					</script>
					");

				$form->addElement('text', 'url', 'Url', array('value' => $url, 'size' => 80, 'maxlength' => 200));
				
				
				$target_a = array(
					"" => "Pas de target",
		            "include"=>"Include in current page",
		            "_blank"=>"Blank",
					"_self"=>"Self",
		            "_parent"=>"Parent",
		            "_top"=>"Top"
		            );

		        $form->addElement('select', 'target', 'Target/Actin', $target_a);
		        $form->setDefaults(array('target' => $target));

				$res1 = $db->getAssoc('select id, nom from ' . TB . 'information_cibles order by nom');
				$form->addElement('select', 'cible_id', 'Cible', $res1, 'id=id');
				$form->setDefaults(array('cible_id' => $cible_id));

				$options = array(
				'language'  => 'fr',
				'format'    => 'dMY',
				'minYear'   => 1987,
				'maxYear'   => 2010);

				$form->addElement('date', 'parution_d', 'Date', $options);
				$form->setDefaults(array('parution_d' => $parution_d));

				$form->addRule('nom', 'Vous devez saisir nom', 'required', '', 'client');

				$form->applyFilter('nom','trim') ;

				$form->setRequiredNote('<span style="color: #ff0000">*</span> = champs obligatoires');
				$form->setJsWarnings('Erreur de saisie','Veuillez corriger');

				$form->addElement('submit', 'bouton_effacer', 'Envoyer');

				/* c'est quand l'utlisateur presse le bouton .... */
				if ($form->validate()) {  //form

				/* dates */
				$date_ar = $form->exportValue('parution_d');
				$date_str = $date_ar["Y"] . "-" . $date_ar["M"] . "-" . $date_ar["d"] . " " . $date_ar["h"] . ":" . $date_ar["m"];

				/* on recupere les valeurs du formulaire */
				$fields_values = array(
				'titre' => $form->exportValue('titre'),
				'description' => $form->exportValue('description'),
				'url' => $form->exportValue('url'),
				'cible_id' => $form->exportValue('cible_id'),
				'parution_d' => $date_str,
				'target' => $form->exportValue('target'));

				/* test pour savoir si on fait un update ou un insert */
				if ($action == 1 ){
					$resins = $db->autoExecute($table_name, $fields_values, DB_AUTOQUERY_INSERT);
				}else{
					$resins = $db->autoExecute($table_name, $fields_values, DB_AUTOQUERY_UPDATE, "id = $id");
				}
				
				// update rss...
				rebuild_rss_xml($db);

				/* check des erreurs */
				if (DB::isError($resins)) {
					/* utilisation d'une fonction de print de message d'erreur */
					print_insupd_err(MSG_INSUPG_ERR, $resins->getMessage());
					form_display($form, "Edition d'une information", "forms", "80%");
				}else{
					$url_back=INDEX_FORM . "?id=" . $service_id . "&sub_id=" . $shortname ;
					go_back($url_back, MSG_INSUPD_RECORD, 1);
					}
		        }else{
					form_display($form, "Edition d'une information", "forms", "80%");
		            $url=INDEX_FORM . "?id=" . $service_id . "&sub_id=" . $shortname;
		            $label="Retour aux " . $title;
		            print_url ($url,$label);
				} //form
		    } //erreur base de donnees
		    break;

	case 10;   // Mode visualisation !!!

		break;

	case 11 ;   // Mode visualisation seule

		/* definir la query */
		$sql = 'select * from ' . $table_name . '
				where id = "' . $id . '"';

		/* lancer la query */
		$res = $db->query($sql);

		// check des erreurs DB
		if ( DB::isError( $res = $db->query( $sql ) ) ) {
			echo MSG_DB_ERR ." " . DB::errorMessage($res), '<br/>';
		}else{

	      	/* pas d'erreur base de donnees */
	        /* assignation dans variables session */
	       	if (is_array($row = $db->getRow($sql))) {
	      	list($id,
				$titre,
				$description,
				$url,
				$cible_id,
				$parution_d) = $row;
				}
		echo $description;

		    } //erreur base de donnees
		    break;

	} //switch
	} //if check des droits
	else {
		print_err_right_on_page(INDEX_FORM);
	}
}

/**
* @function print_info
*
* @deal print de l'information
*
* @param  object  $db       	Instance d'un formulaire PEAR
* @param  string  INDEX_FORM  	Page d'index
* @param  string  $service_id  	Id du service (edition, effacement, ...)
* @param  string  $action    	Action ( ici il n'y a que l'affichage(
* @param  string  $id  	        Id de l'info a printer
* @param  string  $cible    	Cible : news, mp3, lien, ....
* */
function print_info($db, $service_id, $action, $id, $cible)
{
	/* variable "globale" */
	$table_name = TB . 'informations';
	$title = "informations";
	$shortname="info";
	/* acces au nom fichier courrant */
	$self = "/" . trim($_SERVER['PHP_SELF'], "/" );

	/* application du mode par defaut.
		 Le mode "action" est passe en parametre de l'url ...?action=SELECTION par example */
	if (empty ($action))
		$action = SELECTION;

	if (isset($_GET['cur_page'])) {
		$cur_page = $_GET['cur_page'];

	} else {
		$cur_page = 1;
	}
	/* get $comment */
	if ( isset($_GET["comment"])){
		$comment = $_GET['comment'];
		$_SESSION["comment"]=$comment;

	}elseif ( isset($_SESSION['comment']) ) {
		$comment = $_SESSION['comment'];

	}else{

		$comment=0;
	}


   /* check des droits */
	if ($_SESSION['ponderation'] < 10){
		$has_rights = "no";
		
	}	else
		$has_rights = "yes";

 		// Mode effacer

	if ( isset($_GET["delcmt"])){
			$url_back = INDEX_FORM . "?id=" . $service_id . "&cur_page=". $cur_page . "&comment=" . $comment;
			del_record_and_go_back($db,  $service_id, TB . "commentaires", $_GET["delcmt"], $url_back);
		}


	/* travail en fonction des actions */
	switch($action)
	{
	case 10;   // Mode visualisation !!!

		/* comptage */
		$sql = "SELECT count(*) as tot_rec
				FROM " . $table_name . " tb, " . TB . "information_cibles ci
				WHERE tb.cible_id = ci.id
				AND ci.nom = '" . $cible . "'" ;

		$result = $db->query($sql);
		$row = $result->fetchrow(DB_FETCHMODE_ASSOC);
		$tot_rec=$row['tot_rec'];
		$tot_page=ceil($tot_rec/NB_REC_PAGE);

		/*
		** La clause LIMIT
		*/
		$limit_clause = "LIMIT " . (($cur_page - 1) * NB_REC_PAGE ) . ", " . NB_REC_PAGE;

		$sql = "SELECT tb.id, tb.titre,  tb.description, tb.url, ci.nom as cible, tb.parution_d,
				DATE_FORMAT(tb.parution_d,'%d/%m/%Y') as treated_parution_d,  tb.target
				FROM " . $table_name . " tb, " . TB . "information_cibles ci
				WHERE tb.cible_id = ci.id
				AND ci.nom = '" . $cible . "'
				ORDER BY parution_d desc " .
				$limit_clause ;
				$result = $db->query($sql);

		/* on initialise la table */
		$colHeaders = array("id", "Titre", "Lien Url","Cible","Date", "Actions");
		$headerStyle = "bgcolor=grey nowrap";
		$table = new HTML_Table("border=0 cellpadding=1 cellspacing=2 ");
		$table->addRow($colHeaders, "", "TH");

		?>
		<div class="news">
		<fieldset>
		<legend><?php echo $cible; ?></legend>
		<?php

		/*
		** Affichage de la page courante
		*/
		echo " Page : " . $cur_page . " de " . $tot_page . " ";

		/*
		** URLs d acces aux pages
		*/
		for ($i = 1; $i <= $tot_page; $i++) {
			$url=INDEX_FORM . "?id=" . $service_id . "&cur_page=". $i;
			if ( $i == $cur_page ) {
			echo "[";
			print_url($url, $i);
			echo "]";
			}else{
			echo " ";
			print_url($url, $i);
			echo " ";
			}
		}
		/* on remplit la table */
		while ($row = $result->fetchrow(DB_FETCHMODE_ASSOC)) {

		/************************
		** PRINT DES NEWS
		************************/
		?>
			<table width="100%" border="0" >
			  <tr>
				<th scope="col"><?php echo $row["titre"] ?></th>
			  </tr>

			<?php if ($row["parution_d"] != "0000-00-00" ) { ?>
			  <tr>
				<div class="date"></div><td><?php echo $row["treated_parution_d"] ?></td></div>
			  </tr>
			<?php } ?>

			  <tr>
				<td>
						<?php echo $row["description"]; ?>
				</td>
			  </tr>

			<?php if ($row["url"] != "" ) { ?>
			  <tr>
				<td><p>
					<?php if ( $row["target"] == "include") {
						include($row["url"]);
					}else {
						open_url($row["url"],$row["url"]);
					}
					?>
				</p></td>
			  </tr> <?php }?>
			  <tr>
				<td><p>
					<?php
						print_comments($db, $service_id, $action, $id, $cible, $row["id"],$comment,$cur_page);			
					?>
				</p></td>
			  </tr>
			 </table>
		<?php  
		 }	// boucle while
		?>
		</fieldset>
		</div>
		<?php
		
		break;

	case 11 ;   // Mode visualisation seule

		/* definir la query */
		$sql = 'select * from ' . $table_name . '
				where id = "' . $id . '"';

		/* lancer la query */
		$res = $db->query($sql);

		// check des erreurs DB
		if ( DB::isError( $res = $db->query( $sql ) ) ) {
			echo MSG_DB_ERR . " " . DB::errorMessage($res), '<br/>';
		}else{

	      	/* pas d'erreur base de donnees */
	        /* assignation dans variables session */
	       	if (is_array($row = $db->getRow($sql))) {
	      	list($id,
				$titre,
				$description,
				$url,
				$cible_id,
				$parution_d,
				$target) = $row;
				}
				
				if ( $target == "include") {
					include($url);
				}else {
					echo $description;
				}

		    } //erreur base de donnees
	    break;
	} //switch
}

/**
* @function print_comments
*
* @deal print des commentaires sur infos
*
* @param  object  $db       	Instance d'un formulaire PEAR
* @param  string  $service_id  	Id du service (edition, effacement, ...)
* @param  string  $action    	Action ( ici il n'y a que l'affichage(
* @param  string  $id  	        Id de l'info a printer
* @param  string  $cible    	Cible : news, mp3, lien, ....
* @param  string  $comment    	Comment status
* @param  string  $cur_page    	Current page
* * 
* 
* */
function print_comments($db, $service_id, $action, $id, $cible, $info_id,$comment,$cur_page)
{

   /* check des droits */
	if ($_SESSION['ponderation'] < 10){
		$has_rights = "no";
		
	}	else
		$has_rights = "yes";

	/* Gestion de commentaires */
	/* si comment = 0, on ne montre rien */
	/* si non, on affiche les commentaires, ainsi que le formulaire d'ajout de commentaire */
	
	/* comptage */
	$sql3 = "SELECT count(*) as tot_rec
			FROM " . TB . "commentaires tb
			WHERE tb.info_id = " . $info_id  ;

	$result3 = $db->query($sql3);
	$row3 = $result3->fetchrow(DB_FETCHMODE_ASSOC);
	$tot_rec3=$row3['tot_rec'];

	if ( $comment != $info_id ) {
		$url=INDEX_FORM . "?id=" . $service_id . "&cur_page=". $cur_page . "&comment=" . $info_id ;
		print_url($url, "Voir");
		echo " les commentaires... (Nb.: ". $tot_rec3 .")";		
	}else{
		/* optenir les comments */
		$sql4 = "SELECT tb.id, tb.titre, tb.description, tb.pseudo, tb.parution_d,
				DATE_FORMAT(tb.parution_d,'%d/%m/%Y %h:%i:%s') as treated_parution_d,
				CONCAT( LEFT(tb.titre, 40) ,  '...'  )  AS cut_titre
				FROM " . TB . "commentaires tb
				WHERE tb.info_id = " . $info_id . "
				ORDER BY parution_d desc " .
		$limit_clause ;
		$result4 = $db->query($sql4);
				
		echo "Commentaires (Nb.: ". $tot_rec3 .") ";
		$url=INDEX_FORM . "?id=" . $service_id . "&cur_page=". $cur_page . "&comment=0";
		print_url($url, "Cacher");
		echo "<br/>";
		echo "<hr>";
		while ($row4 = $result4->fetchrow(DB_FETCHMODE_ASSOC)) {
			echo "<i>";
			echo "de " . $row4["pseudo"] . ", le " . $row4["treated_parution_d"] . "<br/>";
			echo $row4["titre"]. "</i><br/>";
			echo $row4["description"] ;
			if ( $has_rights != no ) {
				$url_del=INDEX_FORM . "?id=" . $service_id . "&cur_page=". $cur_page . "&comment=" . $info_id . "&delcmt=" . $row4["id"];
				print_del_url($url_del,MSG_DEL_QUERY);
				//print_url_if_not_null($url_edit,IMG_CONT_3);
			} // if
			echo "<br/>";
			echo "<hr>";
		} // while
		$url=INDEX_FORM . "?id=" . $service_id . "&cur_page=". $cur_page . "&comment=" . $info_id;
		
		/* formulaire de filtrage */
		$form = new HTML_QuickForm('filter_form', 'post', $url );
		$form->addElement('text', 'titre', 'Titre', array('value' => "", 'size' => 80, 'maxlength' => 100));

		$attrs = array("class"=>"warn",
			   "rows"=>"10",
			   "cols"=>"60",
			   "id" => "description");
		$form->addElement('textarea', 'description', 'Description', $attrs);

		$form->addElement('html', "
			<script type='text/javascript' src='js/toolbar.js'></script>
			<script type='text/javascript'>
			if (document.getElementById) {
			var tb = new dcToolBar(document.getElementById('description'),'html','images/');
			tb.btStrong('Forte emphase');
			tb.btEm('Emphase');
			tb.btIns('Insere');
			tb.btDel('Supprime');
			tb.btQ('Citation en ligne');
			tb.btCode('Code');
			tb.addSpace(10);
			tb.btBr('Saut de ligne');
			tb.addSpace(10);
			tb.btBquote('Bloc de citation');
			tb.btPre('Texte preformate');
			tb.btList('Liste non ordonnee','ul');
			tb.btList('Liste ordonnee','ol');
			tb.addSpace(10);
			tb.btLink('Lien',
			'URL ?',
			'Langue ?',
			'fr');
			tb.btImgLink('Image externe','URL ?');
			tb.addSpace(10);
			tb.draw('Vous pouvez utiliser les raccourcis suivants pour enrichir votre presentation.');
			}
			</script>
			");

		$form->addElement('text', 'pseudo', 'Pseudo', array('value' => "", 'size' => 40, 'maxlength' => 40));

		$form->addElement('hidden', 'info_id',$info_id);
	
		$form->addRule('titre', 'Vous devez saisir le titre', 'required', '', 'client');

		

		$form->addRule('description', 'Vous devez saisir le titre', 'required', '', 'client');

	
			$form->addElement('text', 'password', 'Petit mot ??? (VH2=>C8)', array('value' => "", 'size' => 40, 'maxlength' => 40));
	
		$form->addRule('pseudo', 'Vous devez saisir votre pseudo', 'required', '', 'client');

		$form->applyFilter('titre','trim') ;

		$form->setRequiredNote('<span style="color: #ff0000">*</span> = champs obligatoires');
		$form->setJsWarnings('Erreur de saisie','Veuillez corriger');					
	
		$form->addElement('submit', 'bouton_effacer', 'Ajouter');

		form_display($form, "Formulaire d'ajout de commentaire", "forms", "60%");	

		/* c'est quand l'utlisateur presse le bouton .... */
		if ($form->validate()) {  //form
	
				/* dates */
				$date_ar = date("Y-m-d H:i");
				$date_str = $date_ar["Y"] . "-" . $date_ar["M"] . "-" . $date_ar["d"] . " " . $date_ar["H"] . ":" . $date_ar["i"];
				
				/* on recupere les valeurs du formulaire */
				$fields_values = array(
				'titre' => $form->exportValue('titre'),
				'description' => $form->exportValue('description'),
				'pseudo' => $form->exportValue('pseudo'),
				'info_id' => $info_id,
				'parution_d' => $date_ar);
			
			
				if ( $form->exportValue('password') != "D.O.A")
				{
				   sleep(10);
				   	print_insupd_err(MSG_INSUPG_ERR, "Trop de spam...");
				
				} else {
			
				/* test pour savoir si on fait un update ou un insert */
				$resins = $db->autoExecute(TB . "commentaires", $fields_values, DB_AUTOQUERY_INSERT);

				/* check des erreurs */
				if (DB::isError($resins)) {
					/* utilisation d'une fonction de print de message d'erreur */
					print_insupd_err(MSG_INSUPG_ERR, $resins->getMessage());
				}else{
					$url=INDEX_FORM . "?id=" . $service_id . "&cur_page=". $cur_page . "&comment=" . $info_id;
					go_back($url, MSG_INSUPD_RECORD, 0);
				}
			}
		} // Form 
	} // montrer les commentaires
}


function rebuild_rss_xml($db)
{
	
	$xml = '<?xml version="1.0" encoding="ISO-8859-1"?><rss version="2.0">';
	$xml .= '<channel>'; 
	$xml .= '<title>Les news de libzic/title>';
	$xml .= '<link>http://www.libzic.ch</link>';
	$xml .= '<description>Les derniers news & posts</description>';
	
	/* variable "globale" */
	$table_name = TB . 'informations';
	$title = "informations";
	$shortname="info";
	
	$limit_clause = "LIMIT 20";
	$sql = "SELECT tb.id, tb.titre,  tb.description, tb.url, ci.nom as cible, tb.parution_d,
			tb.target
			FROM " . $table_name . " tb, " . TB . "information_cibles ci
			WHERE tb.cible_id = ci.id
			ANd ci.nom = 'news'
			ORDER BY parution_d desc " .
			$limit_clause ;
	
			$result = $db->query($sql);
					/* on remplit la table */
					while ($row = $result->fetchrow(DB_FETCHMODE_ASSOC)) {

							$date2=date("D, d M Y H:i:s", strtotime($row["parution_d"]));
							$xml .= '<item>';
							$xml .= '<title>'.$row["titre"].'</title>';
							$xml .= '<link>../index.php?id=22&info_id=' .$row["id"] . '</link>';
							$xml .= '<pubDate>'.$row["parution_d"].'</pubDate>'; 
							$xml .= '<description>'.   strip_tags($row["description"]). '</description>';
							$xml .= '</item>';	
					}
	
		
	// édition de la fin du fichier XML
	$xml .= '</channel>';
	$xml .= '</rss>';

	// écriture dans le fichier
	$fp = fopen("rss/news_rss.xml", 'w+');
	fputs($fp, $xml);
	fclose($fp);

}
?>